//乘法口诀表
// #include<stdio.h>
// int main()
// {
//     int i = 0;
//     for(i=0; i<=9; i++)
//     {
//         int j = 0;
//         for(j=0; j<=9; j++)
//         {
//             printf("%d*%d=%d ",i,j,i*j);
//         }
//     }
//     return 0;
// }


//求最大值
// #include<stdio.h>
// int main()
// {
//     int arr[10] = {0};
//     int i = 0;
//     int max =0;
//     for(i=0; i<10; i++)
//     {
//         scanf("%d",&arr[i]);
//     }
//     max = arr[0];
//     for(i=0; i<10; i++)
//     {
//         if(arr[i] > max)
//         max = arr[i];
//     }
//     printf("max=%d",max);
//     return 0;
// }


// //分数求和
// #include<stdio.h>
// int main()
// {
//     int i = 0;
//     double sum = 0.0;
//     double x = 0;
//     double y = 0;
//     for(i=1; i<=100; i++)
//     {
//         if(i%2 == 0)
//         x -= 1.0/i;
//         else
//         y += 1.0/i;
//         sum = x + y;
//     }
//     printf("%lf",sum);
//     return 0;
// }

//数9的个数
// #include <stdio.h>
// int main()
// {
// 	int i = 0;
// 	int count = 0;
// 	for(i=1; i<=100; i++)
// 	{
// 		if(i%10==9)
// 			count++;
// 		if(i/10==9)
// 			count++;
// 	}
// 	printf("%d\n", count);
// 	return 0;
// }

//猜数字游戏
// #include<stdio.h>
// #include <stdlib.h>
// #include <stdio.h>
// #include <time.h>

// void menu()
// {
// 	printf("*****************************\n");
// 	printf("*********   1. play  ********\n");
// 	printf("*********   0. exit  ********\n");
// 	printf("*****************************\n");
// }
// void game()
// {
// 	int ret = rand()%100+1;
// 	int guess = 0;
// 	while (1)
// 	{
// 		printf("请猜数字:>");
// 		scanf("%d", &guess);
// 		if (guess < ret)
// 		{
// 			printf("猜小了!\n");
// 		}
// 		else if (guess > ret)
// 		{
// 			printf("猜大了!\n");
// 		}
// 		else
// 		{
// 			printf("恭喜你，猜对了!\n");
// 			break;
// 		}
// 	}
// }

// int main()
// {
// 	int input = 0;
// 	srand((unsigned int)time(NULL));

// 	do
// 	{
// 		menu();
// 		printf("请选择:>");
// 		scanf("%d", &input);
// 		switch (input)
// 		{
// 		case 1:
// 			game();
// 			break;
// 		case 0:
// 			printf("退出游戏\n");
// 			break;
// 		default:
// 			printf("选择错误\n");
// 			break;
// 		}
// 	} while (input);
// 	return 0;
// }


//二分查找
#include<stdio.h>
int main()
{
	int arr[] = { 1,2,3,4,5,6,7,8,9,10 };
	int k = 7;
	int i = 0;
	int sz = sizeof(arr) / sizeof(arr[0]);
	int left = 0;
	int right = sz - 1;
	int flag = 0;
	while (left<=right)
	{
		int mid = left + (right - left) / 2;

		if (arr[mid] < k)
		{
			left = mid + 1;
		}
		else if (arr[mid] > k)
		{
			right = mid - 1;
		}
		else
		{
			printf("找到了，下标是：%d\n", mid);
			flag = 1;
			break;
		}
	}
	if (flag == 0)
		printf("找不到\n");

	return 0;
}